Today, increasingly large and more complex networks are being created and used to provide services for companies worldwide. Such networks may consist of many devices that are linked together by numerous connections. There is also a large variety of types of network devices that may be used. For example, the types of network devices include, but are not limited to, switches, routers, bridges, central processing units (CPU's), storage devices, terminal servers, load balancers, firewalls, external hubs, or any other device that may be incorporated into a network. Use in a network may involve a densely packed equipment rack.
Furthermore, there may be differences among types of network devices depending on other factors, such as the specific role for a particular network device or the identity of the manufacturer of the network device. Also, there is a large variety of types of connections between network devices, such as serial connections, various forms of Ethernet, and fiber connections. All of the variations in network devices, functions performed by the network devices, differences among manufacturers, and variations in interconnections result in highly differentiated and complex networks.
In order to create, modify, operate, and maintain such networks, it is often desirable to know the details of the interconnections among the many network devices. Detailed knowledge about the connections may be particularly important for some types of networks, such as outsourcing facilities that host Web sites or servers by co-locating such resources for a number of customers. Outsourcing facilities provide physical space and redundant network and power facilities so that the enterprise customer or user need not provide them. The network and power facilities are shared among many enterprises or customers. A “server farm” is one example of such a network in which servers and other network devices are made available for use by a variety of other clients or companies.
Because server farms have a large number of network devices that are located in a centralized area, it is often desirable to know the boundaries of the hardware designated for use by each company or client. Operators of the server farm would like to know the details of the interconnections between network devices in the server farm.
The information desired by the server farm operators may include not just which network devices are connected together in a logical sense (e.g., network connectivity), but also the details of the physical connections. For example, the physical connection information may include identifying with which cables the devices are connected and on which ports of the devices those cables are attached. The information may also include the various types of connections between the network devices and distinguish between power connections, serial connections, Ethernet, and fiber connections.
Another problem encountered in the server farm environment is that the density of the equipment racks containing the network devices is increasing so that more network devices may be contained within the same physical space. The increased density results in a more crowded deployment of the network devices, which makes it increasingly difficult for a technician to physically trace all of the connections to ensure that they have been established correctly.
One approach for determining the interconnections among the devices of a network is to establish a rigid specification or definition that prescribes how each network device is connected to other network devices. For example, for a network device “A,” such a definition might specify that network device “A” is to be connected via a connection “B” to a port “C” on a network device “D”
Once a type of rigid definition is established, the network may be constructed according to detailed specifications of how each network device is to be connected to the other network devices. The rigid definition approach may be effective if the number of network devices is small because the limited number of interconnections makes it feasible to manually verify each connection between the network devices and correct any problems or mistakes.
However, as the number of network devices, the types of network devices, the number of connections and the types of connections all increase, the effectiveness of the rigid definitional approach decreases. In particular, the more network devices and connections there are, the more difficult it is to test each connection and identify those connections that are misconnected or otherwise have problems that are to be resolved.
For example, even in a network of only a few dozen devices, the number of interconnections may number well into the hundreds. Ensuring that the connection to every network device has been installed according to the rigid definition requires significant effort on the part of operating personnel. The effort required in the rigid definition approach to set-up the network and determine the resulting interconnections also often requires using more highly skilled personnel than would typically be desired. Therefore, it would be advantageous to have techniques for minimizing personnel resources, both in terms of the number of persons needed and the skill level required, to establish and verify the configuration of a network.
Furthermore, because of the inevitability of human error, merely having personnel repeatedly check the work done against the rigid network definition is often not effective in identifying a sufficient number of the problems with the network configuration. Inevitably some problems will escape even the most careful inspection by qualified personnel. Therefore, it would be advantageous to have techniques that reduce the opportunity for human error in determining the interconnections among network devices.
Another approach for determining the interconnections among the devices of a network is to provide no definition or framework for connecting the network devices. The no definition approach means that no structure or guidance is followed in connecting the network devices. Again, such an approach may work well for a small number of devices and interconnections where operators are able to determine which devices are connected over which connections on an as needed basis. And the no definition approach may save resources in the initial configuration of the network since there is no definition or plan is to be followed.
However, as the number of devices, the types of devices, the number of connections and the types of connections all increase, the effectiveness of the no definition approach decreases. It becomes increasingly difficult to sort out the network topography from the complex configuration that results from not following any plan to establish the interconnections among the network devices. Therefore, it would be advantageous to have techniques that provide direction to personnel as to how to create and verify the configuration of a network.
Based on the foregoing, there is a clear need for improved techniques for determining the interconnections among network devices.